1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
| package main
import ( "fmt" "gin_test/utils" "github.com/gin-gonic/gin" "log" "os" "path" "strconv" )
func main() { router := gin.Default()
router.MaxMultipartMemory = 8 << 20 router.POST("/upload", func(c *gin.Context) { file, _ := c.FormFile("file") extName := path.Ext(file.Filename) allowExtMap := map[string]bool{ ".jpg": true, ".png": true, ".gif": true, ".jpeg": true, ".md": true, }
if _, ok := allowExtMap[extName]; !ok { c.String(200, "文件类型不合法") return } day := utils.GetDay() dir := "./media/" + day if err := os.MkdirAll(dir, 0777); err != nil { log.Println(err) } fileUnixName := strconv.FormatInt(utils.GetUnix(), 10) saveDir := path.Join(dir, fileUnixName+extName) fmt.Println(saveDir) c.SaveUploadedFile(file, saveDir) c.String(200, "上传文件成功") }) router.Run(":8000") }
|